#include "InterpConditions.H"
using namespace std;
int main(int argc, const char **argv)
{
    cout << "-----------------------Test IntpConds------------------------" << endl;
    RealVect a1 = {1.1, 2, 9, 12, 0, 0, 0, 0, 0}, a2 = {2.1, 3, 4, 4}, a3 = {2.0, 2.3};
    RealBox b1 = {a1, a2, a3};
    InterpConditions IntpConds1(b1), IntpConds2;
    cout << "////Expected: 1.1,2.1,2.0 are InterpSites, the follwing i-th element is f's i-th derivation on each InterpSite " << endl;
    cout << IntpConds1 << endl;
    IntpConds2.ResetIntpInfo({{0, 1.1}, {1, 2.1}, {2, 3.1, 9.2, 28.1}});
    cout << "////Expected:增加一个插值点及对应的函数值导数值;如果已有这个插值点，则清空旧数据并用新数据覆盖" << endl;
    cout << IntpConds2 << endl;
    IntpConds2.ResetIntpSite({4, 4.1});
    cout << IntpConds2 << endl;
    IntpConds2.ResetIntpSite({2, 4.1});
    cout << IntpConds2 << endl;
    return 0;
}